package javango.contrib.admin.api;

import java.util.Iterator;

import javango.db.Manager;

import com.google.inject.ImplementedBy;

@ImplementedBy(DefaultAdminOptions.class)
public interface AdminOptions {

	/**
	 * Return an iterator of all available class mappings
	 * @return
	 */
	
	public Iterator<Class> getClassMappings();
	
	/**
	 * Return the class mapping for the specified class
	 * @return
	 */
	public Class getClassMapping(String entityName);
	
	/**
	 * Returns the ModelAdmin options for the specified class
	 * @param model
	 * @return
	 */
	public ModelAdmin getModelAdmin(Class model);
	
	public String getIndexTemplate();
	
	/**
	 * The default templates use this in the breadcrumbs, 
	 * @return
	 */
	public String getAppName();
}
